import request from '@/config/axios'

// OA 假期取消申请 VO
export interface LeaveCancelVO {
  id: number // 主键ID
  userId: number // 申请人ID
  userName: string // 申请人姓名
  deptId: number // 部门ID
  deptName: string // 部门名称
  originalLeaveId: number // 原请假申请ID
  leaveType: number // 请假类型
  leaveName: string // 请假类型名称
  cancelReason: string // 取消原因
  status: number // 审批结果
  processInstanceId: string // 流程实例的编号
  createTime: Date // 创建时间
  updateTime: Date // 更新时间
  creator: string // 创建者
  createName: string // 创建者姓名
  updater: string // 更新者
  updateName: string // 更新者姓名
}

// OA 假期取消申请 API
export const LeaveCancelApi = {
  // 查询OA 假期取消申请分页
  getLeaveCancelPage: async (params: any) => {
    return await request.get({ url: `/oa/leave-cancel/page`, params })
  },

  // 查询OA 假期取消申请详情
  getLeaveCancel: async (id: number) => {
    return await request.get({ url: `/oa/leave-cancel/get?id=` + id })
  },

  // 新增OA 假期取消申请
  createLeaveCancel: async (data: any) => {
    return await request.post({ url: `/oa/leave-cancel/create`, data })
  },

  // 删除OA 假期取消申请
  deleteLeaveCancel: async (id: number) => {
    return await request.delete({ url: `/oa/leave-cancel/delete?id=` + id })
  },

  // 导出OA 假期取消申请 Excel
  exportLeaveCancel: async (params) => {
    return await request.download({ url: `/oa/leave-cancel/export-excel`, params })
  },
} 